--======================================================================--
--	☆ 作者：飞蛾扑火 QQ：1415559882
--======================================================================--
local 场景类_系统设置 = class()

local floor = math.floor
local ceil = math.ceil
local tp,zts
local insert = table.insert

function 场景类_系统设置:初始化(根)
	self.ID = 63
	self.x = 325
	self.y = 120
	self.xx = 0
	self.yy = 0
	self.注释 = "系统设置"
	self.可视 = false
	self.鼠标 = false
	self.焦点 = false
	self.可移动 = true
	local 资源 = 根.资源
	local 按钮 = 根._按钮
	local 自适应 = 根._自适应
	local 小型选项栏 = 根._小型选项栏
	tp = 根
	self.资源组 = {
		[1] = 自适应.创建(0,1,454,398,3,9),
		[2] = 按钮.创建(自适应.创建(18,4,16,16,4,3),0,0,4,true,true),--关闭
		[3] = 按钮.创建(资源:载入('aaa.wdf',"网易WDF动画",0x1343E14),0,0,4,true,true),
		[4] = 按钮.创建(资源:载入('aaa.wdf',"网易WDF动画",0x1343E14),0,0,4,true,true),
		[10] = 按钮.创建(自适应.创建(12,4,80,22,1,3),0,0,4,true,true,"系统设置"),
		[11] = 按钮.创建(自适应.创建(101,4,18,19,4,3),0,0,4,true,true),
		[12] = 按钮.创建(自适应.创建(12,4,80,22,1,3),0,0,4,true,true,"保存设置"),
		[13] = 按钮.创建(自适应.创建(12,4,80,22,1,3),0,0,4,true,true,"退出游戏"),
		[14] = 按钮.创建(自适应.创建(12,4,80,22,1,3),0,0,4,true,true,"藏宝阁"),
		[15] = 按钮.创建(自适应.创建(12,4,80,22,1,3),0,0,4,true,true,"一键附魔"),
		[17] = 按钮.创建(自适应.创建(12,4,80,22,1,3),0,0,4,true,true,"连点模式"),
		[31] = 按钮.创建(资源:载入('aaa.wdf',"网易WDF动画",0x1343E14),0,0,4,true,true),
		[32] = 按钮.创建(资源:载入('aaa.wdf',"网易WDF动画",0x1343E14),0,0,4,true,true),
		[33] = 按钮.创建(资源:载入('aaa.wdf',"网易WDF动画",0x1343E14),0,0,4,true,true),
		[34] = 按钮.创建(资源:载入('aaa.wdf',"网易WDF动画",0x1343E14),0,0,4,true,true),
		[35] = 按钮.创建(资源:载入('aaa.wdf',"网易WDF动画",0x1343E14),0,0,4,true,true),
		[24] = 自适应.创建(103,1,115,22,1,3,nil,18),--下拉框开始 --灰色
		[26] = 小型选项栏.创建(自适应.创建(8,1,115,120,3,9),"游戏界面设置"),--下拉框结束
		[23] = tp._滑块.创建(资源:载入('wzife.wdf',"网易WDF动画",0x8D4BBC26),1,190,16,1),
		[27] = tp._滑块.创建(资源:载入('wzife.wdf',"网易WDF动画",0x8D4BBC26),1,190,16,1),
		[29] = 自适应.创建(103,1,190,22,1,3,nil,18)
	}
	self.隐藏={}
	for i=2,4 do
		self.资源组[i]:绑定窗口_(self.ID)
	end
	for i=10,14 do
		self.资源组[i]:绑定窗口_(self.ID)
	end
	self.资源组[14]:置偏移(9,0)
	for i=31,35 do
		self.资源组[i]:绑定窗口_(self.ID)
	end
	self.资源组[23]:绑定窗口_(self.ID)
	self.资源组[27]:绑定窗口_(self.ID)
	self.资源组[15]:绑定窗口_(self.ID)
	for i=1,3 do
		self.隐藏[i]=资源:载入('pic/txbj.png',"图片")
		self.隐藏[i]:置颜色(ARGB(1,255,255,255))
	end

	self.kuang=资源:载入('wdf/audio/tupian/sz1.png',"图片")
	self.xuanz=资源:载入('wdf/audio/tupian/baidian.png',"图片")
	self.xuanz1=资源:载入('wdf/audio/tupian/baidian.png',"图片")


	zts = tp.字体表.普通字体
	self.窗口时间 = 0
	local XXX=读配置("./config.ini","mhxy","宽度") or "1000"
	local YYY=读配置("./config.ini","mhxy","高度") or "620"
	self.游戏窗口设置= XXX.."*"..YYY

end

function 场景类_系统设置:打开()
	if self.可视 then
		self.可视 = false
	else
		-- insert(tp.窗口_,self)
		if tp.战斗中 then
			insert(tp.战斗窗口_,self)
		else
			insert(tp.窗口_,self)
		end
		tp.运行时间 = tp.运行时间 + 1
		self.窗口时间 = tp.运行时间
		 self.可视 = true
		-- if 引擎.是否全屏 then
		-- 	self.游戏窗口设置 = "全屏窗口"
		-- else
			self.游戏窗口设置 = 全局游戏宽度.."*"..全局游戏高度
		-- end
		self.资源组[3]:置打勾框(tp.音乐开启)
		self.资源组[4]:置打勾框(tp.音效开启)
		self.资源组[31]:置打勾框(tp.显示锦衣光环足迹)
		self.资源组[32]:置打勾框(tp.显示变身卡造型)
		self.资源组[33]:置打勾框(tp.显示坐骑)
		self.资源组[34]:置打勾框(低配模式)
		self.资源组[23]:置起始点(self.资源组[23]:取百分比转换(tp.音乐音量,0,160))
		self.资源组[27]:置起始点(self.资源组[23]:取百分比转换(tp.音效音量,0,160))
		self.x=取界面坐标(self.资源组[1].宽度)

		self.wx={1,2,-2}
		self.fbl=1
		self:取分辨率()

	end
end
function 场景类_系统设置:取分辨率()
	if self.游戏窗口设置=="640*480" then
		self.fbl=1
	elseif self.游戏窗口设置=="800*600" then
		self.fbl=2
	elseif self.游戏窗口设置=="1024*680" then
		self.fbl=3
	end
end
local  cangbaogedianjishij=0
function 场景类_系统设置:显示(dt,x,y)

	-- if 引擎.是否全屏 then
	-- 	self.游戏窗口设置 = "全屏窗口"
	-- else
	-- 	self.游戏窗口设置 = 全局游戏宽度.."*"..全局游戏高度
	-- end

	self.焦点 = false
	self.资源组[2]:更新(x,y)
	self.资源组[3]:更新(x,y)
	self.资源组[4]:更新(x,y)
	self.资源组[1]:显示(self.x,self.y)
	tp.窗口标题背景_:显示(self.x-86+self.资源组[1].宽度/2,self.y)
	引擎.场景.字体表.标题字体:显示(self.x+self.资源组[1].宽度/2,self.y+3,"系统设置")
	self.资源组[2]:显示(self.x-18+self.资源组[1].宽度,self.y+3)
	self.kuang:显示(self.x+105,self.y+34)
	self.资源组[10]:更新(x,y)
	self.资源组[10]:显示(self.x+13,self.y+34,true,nil,nil,true,2)
	self.xuanz1:显示(self.x+209,self.y+119)
	for i=1,3 do
		self.隐藏[i]:显示(self.x+42+i*92,self.y+83)
		if self.隐藏[i]:是否选中(x,y) and 引擎.鼠标弹起(左键) and not tp.战斗中 then
			if self.fbl~=i then
				self.fbl=i
				if i==1 then
					self.游戏窗口设置="640*480"
				elseif i==2 then
					self.游戏窗口设置="800*600"
				elseif i==3 then
					self.游戏窗口设置="1024*680"
				end
				local sdw=self.游戏窗口设置
				if self.游戏窗口设置=="640*480" then
					sdw="755*560"
				end
				local 宽高XY =分割文本2(sdw,"*")
						if not 判断是否数组(宽高XY) then
							return false
						end
						local 宽高X,宽高Y=math.ceil(宽高XY[1]) or 800,math.ceil(宽高XY[2]) or 600


						全局游戏宽度 = 宽高X
						全局游戏高度 = 宽高Y
						local sss=0
						 if tp.wbltk then
						   sss=__聊天框x
						   引擎.场景.窗口.消息框.丰富文本外框:置宽度(__聊天框x-5)
				   引擎.场景.窗口.消息框.外部聊天框底图:置区域(0,0,__聊天框x,全局游戏高度)--可以充填
						end
						引擎.置宽高(宽高X+sss,宽高Y)
						withs = 全局游戏宽度
						hegts = 全局游戏高度
						with = 全局游戏宽度/2
						hegt = 全局游戏高度/2
						写配置("./config.ini","mhxy","宽度",全局游戏宽度)
						写配置("./config.ini","mhxy","高度",全局游戏高度)
						引擎.场景.窗口.消息框:调整分辨率()
			end
		end
	end
	-- print(self.fbl,self.wx[self.fbl])
	self.xuanz:显示(self.x+42+6+self.wx[self.fbl]+self.fbl*92,self.y+83+11)
	zts:置颜色(0xFF222222)
	zts:显示(self.x+56+116-5,self.y+55+109,"游戏音乐")
	zts:显示(self.x+56+116-5,self.y+85+109,"游戏音效")
	zts:显示(self.x+137,self.y+158+80,"界面风格")
	zts:显示(self.x+137+35,self.y+145+80+57-15,"显示变身卡造型")
	zts:显示(self.x+137+35,self.y+170+80+57-15,"显示锦衣光环足迹")
	zts:显示(self.x+206+35+80+20,self.y+145+80+57-15,"显示坐骑")
	zts:显示(self.x+206+35+80+20,self.y+170+80+57-15,"流畅模式")
	zts:显示(self.x+137+35,self.y+170+80+57+25-15,"装备观察")
	self.资源组[12]:更新(x,y)
	self.资源组[13]:更新(x,y)
	self.资源组[14]:更新(x,y)
	self.资源组[15]:更新(x,y)
	self.资源组[12]:显示(self.x+126,self.y+334+29)--保存
	self.资源组[13]:显示(self.x+126+75+122,self.y+334+29)--退出
	self.资源组[14]:显示(self.x+13,self.y+34+37)--藏宝阁
	--self.资源组[15]:显示(self.x+13,self.y+74,true,nil,nil,nil,2)
	  self.资源组[17]:显示(self.x+126+100,self.y+334+29)----连点
          self.资源组[17]:更新(x,y)

	for i=31,35 do
		self.资源组[i]:更新(x,y)
	end

	self.资源组[32]:显示(self.x+137,self.y+145+77+57-15,true,nil,nil,tp.显示变身卡造型,2) --显示变身卡造型
	self.资源组[31]:显示(self.x+137,self.y+170+77+57-15,true,nil,nil,tp.显示锦衣光环足迹,2) --显示锦衣光环足迹
	self.资源组[33]:显示(self.x+206+80+20,self.y+145+77+57-15,true,nil,nil,tp.显示坐骑,2) --显示坐骑
	self.资源组[34]:显示(self.x+206+80+20,self.y+170+77+57-15,true,nil,nil,低配模式,2) --显示祥瑞
	self.资源组[35]:显示(self.x+137,self.y+170+25+77+57-15,true,nil,nil,tp.装备观察,2) --装备观察


			  self.资源组[3]:显示(self.x+137,self.y+50+110,true,nil,nil,tp.音乐开启,2)
	self.资源组[4]:显示(self.x+137,self.y+80+110,true,nil,nil,tp.音效开启,2) --游戏音效
	self.资源组[29]:显示(self.x+129+116-10,self.y+52+108)
	self.资源组[29]:显示(self.x+129+116-10,self.y+82+108)
	self.资源组[23]:显示(self.x+129+116-10,self.y+54+108,x,y,self.鼠标)
	self.资源组[27]:显示(self.x+129+116-10,self.y+84+108,x,y,self.鼠标)



	self.资源组[24]:显示(self.x+210,self.y+155+80)
	 self.资源组[11]:更新(x,y)
	 self.资源组[11]:显示(self.x+213-30+122,self.y+155+80)
	 self.资源组[26]:显示(self.x+129+72+27-17,self.y+18+4+151+80,x,y,self.鼠标)

	 if self.资源组[23].接触 then--音量"
		tp.音乐音量 = ceil(160*self.资源组[23]:取百分比())
		if tp.战斗中 then
			tp.战斗音乐:置音量(tp.音乐音量)
		else
			tp.音乐:置音量(tp.音乐音量)
		end
		self.焦点 = true
	end
	if self.资源组[27].接触 then--音量"
		tp.音效音量 = ceil(160*self.资源组[27]:取百分比())
		self.焦点 = true
	end
	if self.资源组[11]:事件判断() then
		local tbt = {"经典","国韵","水晶"}
		self.资源组[26]:打开(tbt)
		self.资源组[26]:置选中(全局界面风格)
	end
	 if self.资源组[2]:事件判断() then
		self:打开()
		return
	elseif self.资源组[15]:事件判断() then
	    -- JGESDK:发送(263)  ---一键附魔
	    -- self:打开()
	    -- return
	elseif self.资源组[14]:事件判断() and os.time()-cangbaogedianjishij>=0 then --藏宝阁
		cangbaogedianjishij=os.time()+2
		JGESDK:发送(65.1)
		self:打开()
		return
	elseif self.资源组[3]:事件判断() then
		-- print(tp.音乐开启)
		tp.音乐开启 = not self.资源组[3].打勾框
		if not tp.音乐开启 then
			if tp.战斗中 then
			tp.战斗音乐:销毁()
			else
				tp.音乐:停止()
			end
		self.资源组[3]:置打勾框(tp.音乐开启)
		JGESDK:发送(90,{选项="音乐开启",回调=tp.音乐开启})
		else
			if tp.战斗中 then
			tp:战斗音乐类(wdf配置.."/Audio/战斗"..Zhandouyy..".mp3")
			else
				tp.音乐:播放()
			引擎.场景.音乐:置音量(tp.音乐音量)
			end

			self.资源组[3]:置打勾框(tp.音乐开启)
			JGESDK:发送(90,{选项="音乐开启",回调=tp.音乐开启})
		end
	elseif self.资源组[4]:事件判断() then
		tp.音效开启 = not self.资源组[4].打勾框
		self.资源组[4]:置打勾框(tp.音效开启)
		JGESDK:发送(90,{选项="音效开启",回调=tp.音效开启})
	elseif self.资源组[26]:事件判断() then
		local 风格 =self.资源组[26].弹出事件
		全局界面风格=风格
		全局切换界面()
		self.资源组[26].弹出事件 = nil
		写配置("./config.ini","mhxy","界面风格",全局界面风格)
	elseif self.资源组[31]:事件判断() then
		tp.显示锦衣光环足迹 = not self.资源组[31].打勾框
		self.资源组[31]:置打勾框(tp.显示锦衣光环足迹)
		tp.场景.人物:置模型()
		JGESDK:发送(90,{选项="显示锦衣光环足迹",回调=tp.显示锦衣光环足迹})
	elseif self.资源组[32]:事件判断() then
		tp.显示变身卡造型 = not self.资源组[32].打勾框
		self.资源组[32]:置打勾框(tp.显示变身卡造型)
		JGESDK:发送(90,{选项="显示变身卡造型",回调=tp.显示变身卡造型})
	elseif self.资源组[33]:事件判断() then
		tp.显示坐骑 = not self.资源组[33].打勾框
		self.资源组[33]:置打勾框(tp.显示坐骑)
		tp.场景.人物:置模型()
		JGESDK:发送(90,{选项="显示坐骑",回调=tp.显示坐骑})
	elseif self.资源组[34]:事件判断() then
		低配模式 = not self.资源组[34].打勾框
		self.资源组[34]:置打勾框(低配模式)
		写配置("./config.ini","mhxy","低配模式",低配模式)
		if 低配模式 then
			-- 资源缓存:清空缓存()
			tp.常规提示:打开("#Y已为您开启流程模式，已屏蔽部分非必要的场景特效。")
		else
			tp.常规提示:打开("#Y已为您关闭流程模式。")
		end
		collectgarbage("collect")
	elseif self.资源组[35]:事件判断() then
		tp.装备观察 = not self.资源组[35].打勾框
		self.资源组[35]:置打勾框(tp.装备观察)
		JGESDK:发送(90,{选项="装备观察",回调=tp.装备观察})
		elseif self.资源组[17]:事件判断() then
	   连点模式= not 连点模式

	   if 连点模式 then
	      tp.常规提示:打开("#Y/开启了连点模式")
	   else
	      tp.常规提示:打开("#Y/关闭了连点模式")
	 end
	elseif self.资源组[12]:事件判断() then--保存
		JGESDK:发送(90,{选项="音乐音量",回调=ceil(160*self.资源组[23]:取百分比())})
		JGESDK:发送(90,{选项="音效音量",回调=ceil(160*self.资源组[27]:取百分比())})
		tp.音乐音量=ceil(160*self.资源组[23]:取百分比())
		tp.音效音量=ceil(160*self.资源组[27]:取百分比())
		tp.常规提示:打开("#Y保存成功！")
	elseif self.资源组[13]:事件判断() then--退出
		JGESDK:发送(5)
		引擎关闭开始()
		return
	end
	zts:置颜色(白色)
	zts:显示(self.x+135+90,self.y+158+80,全局界面风格)
end

function 场景类_系统设置:检查点(x,y)
	if self.资源组[1]:是否选中(x,y)  then
		return true
	end
end

function 场景类_系统设置:初始移动(x,y)
	tp.运行时间 = tp.运行时间 + 1
	if not 引擎.消息栏焦点 then
		self.窗口时间 = tp.运行时间
	end
	if not self.焦点 then
		tp.移动窗口 = true
	end
	if self.鼠标 and  not self.焦点 then
		self.xx = x - self.x
		self.yy = y - self.y
	end
end

function 场景类_系统设置:开始移动(x,y)
	if self.鼠标 then
		self.x = x - self.xx
		self.y = y - self.yy
	end
end

return 场景类_系统设置